#include <stdio.h>
#include <string.h>
#include <assert.h>
//char* strcpy(char* destination, const char* source)
//把source指向的字符串拷贝到destination指向的数组中，包括'\0'
//源字符串必须以'\0'结束
//会将字符串中的'\0'拷贝到目标空间
//目标空间必须足够打，以确保能存放源字符串
//目标空间必须可变

char* my_strcpy(char* dest, const char* src)
{
    assert(dest);
    assert(src);
    char* ret = dest;
    while(*dest++ = *src++);
    return ret;
}

void example()//常量字符串不可变，会报错
{
    const char* p = "abcdef";
    char arr[] = "bit";
    strcpy(p, arr);
}

int main()
{
    char name[20] = {0};
    strcpy(name, "zhangsan");//被拷贝的字符串一定要有'\0'
    printf("%s\n", name);
    my_strcpy(name, "lisi");
    printf("%s\n", name);
    return 0;
}